home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / MRAC / Pitch Class Set / pcs-complement < prev    next >
Lisp/Scheme  |  1998-08-11  |  2KB  |  37 lines

  1. pcs-complement type low high fn-name
  2.  
  3. type - :integer :symbol :pitch
  4.  
  5. Allen Forte's unique notation system commonly known as Forte Notation has come to be recognised as one of the most successful attempts at providing a means of describing and analysing musical pitch structures that defy interpretation as tonal or 12-note serial systems. Thus, Forte's system is equally at home describing Ives and Stravinsky as it is Schoenberg and Webern.
  6.  
  7. Such a system able to deal with intervallic relationships from pitch class extrapolations of material has a potential within SCOM to be itself a generator of pitch series.
  8.  
  9. (pcs :integer '5-6)
  10. => (0 1 2 5 6)
  11.  
  12. (pcs-complement :integer 5 5 (pcs :integer '5-6))
  13. => (3 4 7 8 9 10 11)
  14.  
  15. This function is able to produce an output of 'complementary' symbols or intervals to that of the pcs generation. If for example, A is a pitch-class-set containing 4 elements (pc integers), then the complement of A is the set of 8 elements not contained in A.
  16.  
  17.  
  18. (pcs-complement :symbol 0 5 (pcs :integer '5-6))
  19. => (d e h i j k l)
  20.  
  21. (pcs-complement :pitch 0 5 (pcs :integer '5-6))
  22. => (d#4 e4 g4 g#4 a4 a#4 b4)
  23.  
  24. (setq list1 (pcs :symbol '(6-7 5-7 4-5 2-1)))
  25. => ((a b c g h i) (a b c g h) (a b c g) (a b))
  26.  
  27. (pcs-complement :symbol 0 11 list1)
  28. => ((d e f j k l) (d e f i j k l)
  29.     (d e f h i j k l) (c d e f g h i j k l))
  30.  
  31. (pcs-complement :symbol 5 6 list1)
  32. => ((d e f j k l) (d e f i j k l) (a b c g) (a b))
  33.  
  34. (pcs-complement :integer 0 6 list1)
  35. => ((3 4 5 9 10 11) (3 4 5 8 9 10 11)
  36.     (3 4 5 7 8 9 10 11) (2 3 4 5 6 7 8 9 10 11))
  37.